package com.zc.angelica.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.zc.angelica.entity.Account;
import com.zc.angelica.entity.ResponseData;
import com.zc.angelica.entity.request.Register;

import javax.servlet.http.HttpServletRequest;
import java.util.Date;

/**
 * (Account)表服务接口
 *
 * @author makejava
 * @since 2022-04-04 12:00:10
 */
public interface AccountService extends IService<Account> {

    /**
     * 注册
     * */
    ResponseData register(Register register, HttpServletRequest request);

    /**
     * 停用
     * */
    ResponseData disable(Long id);

    /**
     * 锁定
     * @param("id") 账户id
     * @param("lockingType") 锁定类型 （1 叠加锁定 超过5次锁定  2 直接锁定）
     * */
    ResponseData locking(Long id,Integer lockingType);

    /**
     * 解锁
     * */
    ResponseData unlock(Long id);

    /**
     * 设置到期时间
     * */
    ResponseData setExpirationTime(Long id, Date endTime);

    /**
     * 获取账户信息
     * */
    ResponseData getAccountInfo();
}

